package cn.easyutil.project.web.session;

public interface SessionCacheFactory {

    //缓存前缀
    String cacheKey="cache_";
    //缓存手机号
    String cacheSmsPhone = "cache_sms_phone_";

    String aesKeyName = "cache_aesKey";

    String userIdName = "userId";

    String getAesKey(String token);

    String getUserId(String token);

    void setToken(String token,Long userId);

    void setAesKey(String token, String aesKey);

    void setUserInfo(String token, String key, String val);

    String getUserInfo(String token, String key);
    /**
     *
     * @param phoneNo
     * @param code
     * @param expire 秒
     */
    void setSmsCode(String phoneNo, String code, long...expire);

    String getSmsCode(String phoneNo);

    void removeSmsCode(String phoneNo);

    void removeToken(String token);

    default String getKey(String key){
        return cacheKey+key;
    }

    /**
     *
     * @param key
     * @param expire 秒
     */
    default void reletExpire(String key, long expire){

    }

}
